package com.sojson.project.entity.po;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import com.sojson.base.impl.BaseDto;
import com.sojson.enums.core.EDelFlagStatus;
import com.sojson.util.DateUtil;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * Bean
 * 
 * @author liu
 * @date 2021-04-23
 */
@ApiModel("转账表Bean")
public class TransferRecord extends BaseDto {

    /**
     * 此文件由工具自动生成，手动添加内容请放至末尾
     */

    private static final long serialVersionUID = 1619142161050L;

    @ApiModelProperty("订单号")
    private String orderNo;
    @ApiModelProperty("付款单号")
    private String payNo;
    @ApiModelProperty("用户id")
    private String userId;
    @ApiModelProperty("帐号")
    private String username;
    @ApiModelProperty("手机号")
    private String mobile;
    @ApiModelProperty("姓名")
    private String name;
    @ApiModelProperty("持卡人")
    private String nameUserBank;
    @ApiModelProperty("银行卡号")
    private String noBank;
    @ApiModelProperty("银行")
    private String bank;
    @ApiModelProperty("类型(1:佣金,2:余额)")
    private Integer type;
    @ApiModelProperty("付款类型(1:微信,2:支付宝,3:线下)")
    private Integer payType;
    @ApiModelProperty("微信openid")
    private String wxOpenid;
    @ApiModelProperty("支付宝openid")
    private String zfbOpenid;
    @ApiModelProperty("标题")
    private String title;
    @ApiModelProperty("内容")
    private String content;
    @ApiModelProperty("金额")
    private BigDecimal total;
    @ApiModelProperty("状态(1:成功,2:处理中,3:失败,4:审核中,5:审核不通过)")
    private Integer status;
    @ApiModelProperty("状态信息")
    private String message;
    @ApiModelProperty("转账成功时间")
    private Date successTime;
    @ApiModelProperty("备注")
    private String mark;
    @ApiModelProperty("删除标志(1:未删除,2:已删除)")
    private Integer delFlag;
    @ApiModelProperty("创建时间")
    private Date createdAt;
    @ApiModelProperty("更新时间")
    private Date updatedAt;
    @ApiModelProperty("1:需要审核的,2:可以关闭的,3:需要审核和可以关闭的")
    private Integer statusSearch;
    /** id集合 */
    private List<Integer> ids;
    /** 订单号集合 */
    private List<String> orderNos;
    /** 集合 */
    private List<TransferRecord> transferRecords;

    /**
     * 以上由工具自动生成，以下为手动添加
     */

       /**
        * Empty constructor
        */
    public TransferRecord() {

    }

    /**
     * 此文件由工具自动生成，手动添加内容请放至末尾
     */

    /**
     * 获取 订单号
     */
    public String getOrderNo() {
        return orderNo;
    }

    /**
     * 设置 订单号
     */
    public void setOrderNo(String orderNo) {
        this.orderNo = orderNo;
    }

    /**
     * 获取 付款单号
     */
    public String getPayNo() {
        return payNo;
    }

    /**
     * 设置 付款单号
     */
    public void setPayNo(String payNo) {
        this.payNo = payNo;
    }

    /**
     * 获取 用户id
     */
    public String getUserId() {
        return userId;
    }

    /**
     * 设置 用户id
     */
    public void setUserId(String userId) {
        this.userId = userId;
    }

    /**
     * 获取 帐号
     */
    public String getUsername() {
        return username;
    }

    /**
     * 设置 帐号
     */
    public void setUsername(String username) {
        this.username = username;
    }

    /**
     * 获取 手机号
     */
    public String getMobile() {
        return mobile;
    }

    /**
     * 设置 手机号
     */
    public void setMobile(String mobile) {
        this.mobile = mobile;
    }

    /**
     * 获取 姓名
     */
    public String getName() {
        return name;
    }

    /**
     * 设置 姓名
     */
    public void setName(String name) {
        this.name = name;
    }

    /**
     * 获取 持卡人
     */
    public String getNameUserBank() {
        return nameUserBank;
    }

    /**
     * 设置 持卡人
     */
    public void setNameUserBank(String nameUserBank) {
        this.nameUserBank = nameUserBank;
    }

    /**
     * 获取 银行卡号
     */
    public String getNoBank() {
        return noBank;
    }

    /**
     * 设置 银行卡号
     */
    public void setNoBank(String noBank) {
        this.noBank = noBank;
    }

    /**
     * 获取 银行
     */
    public String getBank() {
        return bank;
    }

    /**
     * 设置 银行
     */
    public void setBank(String bank) {
        this.bank = bank;
    }

    /**
     * 获取 类型(1:佣金,2:余额)
     */
    public Integer getType() {
        return type;
    }

    /**
     * 设置 类型(1:佣金,2:余额)
     */
    public void setType(Integer type) {
        this.type = type;
    }

    /**
     * 获取 付款类型(1:微信,2:支付宝,3:线下)
     */
    public Integer getPayType() {
        return payType;
    }

    /**
     * 设置 付款类型(1:微信,2:支付宝,3:线下)
     */
    public void setPayType(Integer payType) {
        this.payType = payType;
    }

    /**
     * 获取 微信openid
     */
    public String getWxOpenid() {
        return wxOpenid;
    }

    /**
     * 设置 微信openid
     */
    public void setWxOpenid(String wxOpenid) {
        this.wxOpenid = wxOpenid;
    }

    /**
     * 获取 支付宝openid
     */
    public String getZfbOpenid() {
        return zfbOpenid;
    }

    /**
     * 设置 支付宝openid
     */
    public void setZfbOpenid(String zfbOpenid) {
        this.zfbOpenid = zfbOpenid;
    }

    /**
     * 获取 标题
     */
    public String getTitle() {
        return title;
    }

    /**
     * 设置 标题
     */
    public void setTitle(String title) {
        this.title = title;
    }

    /**
     * 获取 内容
     */
    public String getContent() {
        return content;
    }

    /**
     * 设置 内容
     */
    public void setContent(String content) {
        this.content = content;
    }

    /**
     * 获取 金额
     */
    public BigDecimal getTotal() {
        return total;
    }

    /**
     * 设置 金额
     */
    public void setTotal(BigDecimal total) {
        this.total = total;
    }

    /**
     * 获取 状态(1:成功,2:处理中,3:失败,4:审核中,5:审核不通过)
     */
    public Integer getStatus() {
        return status;
    }

    /**
     * 设置 状态(1:成功,2:处理中,3:失败,4:审核中,5:审核不通过)
     */
    public void setStatus(Integer status) {
        this.status = status;
    }

    /**
     * 获取 状态信息
     */
    public String getMessage() {
        return message;
    }

    /**
     * 设置 状态信息
     */
    public void setMessage(String message) {
        this.message = message;
    }

    /**
     * 获取 转账成功时间
     */
    public Date getSuccessTime() {
        return successTime;
    }

    /**
     * 设置 转账成功时间
     */
    public void setSuccessTime(Date successTime) {
        this.successTime = successTime;
    }

    /**
     * 获取 备注
     */
    public String getMark() {
        return mark;
    }

    /**
     * 设置 备注
     */
    public void setMark(String mark) {
        this.mark = mark;
    }

    /**
     * 获取 删除标志(1:未删除,2:已删除)
     */
    public Integer getDelFlag() {
        return delFlag;
    }

    /**
     * 设置 删除标志(1:未删除,2:已删除)
     */
    public void setDelFlag(Integer delFlag) {
        this.delFlag = delFlag;
    }

    /**
     * 获取 创建时间
     */
    public Date getCreatedAt() {
        return createdAt;
    }

    /**
     * 设置 创建时间
     */
    public void setCreatedAt(Date createdAt) {
        this.createdAt = createdAt;
    }

    /**
     * 获取 更新时间
     */
    public Date getUpdatedAt() {
        return updatedAt;
    }

    /**
     * 设置 更新时间
     */
    public void setUpdatedAt(Date updatedAt) {
        this.updatedAt = updatedAt;
    }

    /**
     * 获取 1:需要审核的,2:可以关闭的,3:需要审核和可以关闭的
     */
    public Integer getStatusSearch() {
        return statusSearch;
    }

    /**
     * 设置 1:需要审核的,2:可以关闭的,3:需要审核和可以关闭的
     */
    public void setStatusSearch(Integer statusSearch) {
        this.statusSearch = statusSearch;
    }

    /**
     * 获取 id集合
     */
    public List<Integer> getIds() {
        return ids;
    }

    /**
     * 设置 id集合
     */
    public void setIds(List<Integer> ids) {
        this.ids = ids;
    }

    /**
     * 获取 订单号集合
     */
    public List<String> getOrderNos() {
        return orderNos;
    }

    /**
     * 设置 订单号集合
     */
    public void setOrderNos(List<String> orderNos) {
        this.orderNos = orderNos;
    }

    /**
     * 获取 集合
     */
    public List<TransferRecord> getTransferRecords() {
        return transferRecords;
    }

    /**
     * 设置 集合
     */
    public void setTransferRecords(List<TransferRecord> transferRecords) {
        this.transferRecords = transferRecords;
    }

    /**
     * 以上由工具自动生成，以下为手动添加
     */

    /**
     * 插入初始化
     */
    public void insertInit() {
        setDelFlag(EDelFlagStatus.NO.getCode());
        Date now = DateUtil.nowDate();
        setCreatedAt(now);
        setUpdatedAt(now);
    }

    /**
     * 更新初始化
     */
    public void updateInit() {
        Date now = DateUtil.nowDate();
        setUpdatedAt(now);
    }

}